package cn.song.freight.domain.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 批量策略分配DTO
 *
 * @author SongRenShuo
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BatchStrategyAssignmentDTO {

    /**
     * 运费策略ID
     */
    @NotNull(message = "运费策略ID不能为空")
    private Long strategyId;

    /**
     * 仓库编码列表（支持多个，用逗号分隔的字符串或数组）
     * 例如：["WH001", "WH002", "WH003"]
     */
    @NotEmpty(message = "仓库编码列表不能为空")
    private List<String> warehouseCodes;

    /**
     * 物流公司编码列表（支持多个，用逗号分隔的字符串或数组）
     * 例如：["SF", "YTO", "ZTO"]
     */
    @NotEmpty(message = "物流公司编码列表不能为空")
    private List<String> logisticsCompanyCodes;

    /**
     * 状态：1-启用，2-禁用
     */
    private Integer status;

    /**
     * 操作人
     */
    private String operator;
}
